package com.deliccio.entitys;

import java.io.Serializable;

import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

import org.hibernate.annotations.CascadeType;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;

import com.deliccio.connect.Entidad;

@Entity
public class DetalleProducto implements Entidad,Serializable{
	private static final long serialVersionUID=1L;

	@Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Basic(optional = false)
	//@GeneratedValue(generator="foreign")
	//@GenericGenerator(name="foreign", strategy = "foreign", parameters={@Parameter(name="property", value="producto")}) 
	@Column(name="idDetalleProducto")
	private Integer id;
	@Column(name="idProductoConjunto")
	private Integer idProductoConjunto;
	@ManyToOne(optional=false)
	@JoinColumn(name="idProducto")
	private Producto producto;
	@Column(name="cantidad")
	private int cantidad;
	@Column(name="subTotal")
	private double subTotal;

	public DetalleProducto(){
	}

	public DetalleProducto(Integer idProductoConjunto,Producto producto,int cantidad,double subTotal){
		this.idProductoConjunto=idProductoConjunto;
		this.producto=producto;
		this.cantidad=cantidad;
		this.subTotal=subTotal;
	}

	public Integer getId(){
		return id;
	}

	public void setId(Integer id){
		this.id=id;
	}

	public Integer getIdProductoConjunto(){
		return idProductoConjunto;
	}

	public void setIdProductoConjunto(Integer idProductoConjunto){
		this.idProductoConjunto=idProductoConjunto;
	}

	public Producto getProducto(){
		return producto;
	}

	public void setProducto(Producto producto){
		this.producto=producto;
	}

	public int getCantidad(){
		return cantidad;
	}

	public void setCantidad(int cantidad){
		this.cantidad=cantidad;
	}

	public double getSubTotal(){
		return subTotal;
	}

	public void setSubTotal(double subTotal){
		this.subTotal=subTotal;
	}

	
}